home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The 640 MEG Shareware Studio 2
/
The 640 Meg Shareware Studio CD-ROM Volume II (Data Express)(1993).ISO
/
clang
/
dtk_demo.zip
/
DSKPARAM.C
< prev
next >
Wrap
C/C++ Source or Header
|
1991-09-12
|
2KB
|
67 lines
/* DSKPARAM.C
* last mod.: 31-AUG-91
*/
#include <STDIO.H>
#include <CONIO.H>
#include <L_DISK.H>
/*#include <L_FILE.H>*/
#include <L_MISC.H>
/*-----------*/
void main(void)
{
Uchar drive = 'A' - 1;
struct drive_parameter_block_t dpb;
while ( TRUE )
{
if ( ++drive <= 'B' )
{
if ( !bios_disk_present(drive-'A') )
{
printf("\nDisk not present in drive %c.\n",drive);
/* perhaps because there is no such drive */
continue;
}
}
if ( get_drive_parameter_block(drive,&dpb) == -1 )
return;
printf("\nDrive parameter block for disk in drive %c:\n",drive);
printf("Drive number = %d\n",
dpb.drive_number);
printf("Device driver unit number = %d\n",
dpb.device_driver_unit_number);
printf("Bytes per sector = %u\n",
dpb.bytes_per_sector);
printf("Sectors per cluster = %d\n",
dpb.sectors_per_cluster);
printf("Shift factor = %d\n",
dpb.shift_factor);
printf("Number of reserved boot sectors = %u\n",
dpb.num_reserved_boot_sectors);
printf("Number of FATs = %d\n",
dpb.num_fat_copies);
printf("Number of root directory entries = %u\n",
dpb.num_root_directory_entries);
printf("Offset to first data sector = %u\n",
dpb.first_data_sector_offset);
printf("Number of clusters = %u\n",
dpb.num_clusters);
printf("Sectors per FAT = %u\n",
dpb.sectors_per_fat);
printf("Offset to first root directory sector = %u\n",
dpb.first_root_dir_sector_offset);
printf("Device driver address = %Fp\n",
dpb.device_driver_address);
printf("Media descriptor byte = %02X\n",
dpb.media_descriptor_byte);
if ( !output_redirected() )
{
printf("Press a key ... \n");
getch();
}
}
}